﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using KPWeb.Class;
using KPWeb.Data;

namespace KPWeb.Koordynator
{
    public partial class Kontekst : KPPage
    {
        private void komunikatError(int kod)//, int iT, int iID)
        {
            fError.Visible = true;
            switch (kod)
            {
                case -1: Error1.Visible = true;
                    break;
                case -2: Error2.Visible = true;
                    break;
                default: fError.Visible = false;
                    break;
            }
        }

        //static public IEnumerable<vKP_JednostkiLista> PobierzJednostkiNaListeSortujJ(int FirmaID)
        //{
        //    using (DBContainer db = new DBContainer())
        //    {
        //        return (from wiz in db.vKP_JednostkiLista
        //                orderby wiz.JednostkaKod
        //                where (wiz.FirmaID == FirmaID)
        //                select wiz).ToArray();
        //    }
        //}
        //static public IEnumerable<vKP_JednostkiLista> PobierzJednostkiNaListeSortujG(int FirmaID)
        //{
        //    using (DBContainer db = new DBContainer())
        //    {
        //        return (from wiz in db.vKP_JednostkiLista
        //                orderby wiz.JednostkaGlownaID
        //                where (wiz.FirmaID == FirmaID)
        //                select wiz).ToArray();
        //    }
        //}

        protected void Page_Load(object sender, EventArgs e)
        {
            fError.Visible = false;
            Error1.Visible = false;
            Error2.Visible = false;
            if (!IsPostBack)
            {
                dUprawnienia.Items.Clear();
                dUprawnienia.Items.Add(new ListItem() { Text = Stale.uprWyb, Value = Stale.uprWyb });
                foreach (vLex_TypUprawnien item in UprawnieniaLogowanie.GetListaUprawnien())
                {
                    if (item.KodUprawnien != Stale.uprKoordynator && item.KodUprawnien != Stale.uprKierownik && item.KodUprawnien != "J")
                    {
                        dUprawnienia.Items.Add(new ListItem()
                        {
                            Text = item.KodUprawnien + " - " + item.NazwaSkroconaUprawnien,
                            Value = item.KodUprawnien
                        });
                    }
                }
                dUprawnienia.SelectedIndex = 0;

                hFirmaID.Value = Current.FirmaID;

            }
        }


        protected void btnWybierzClick(object sender, EventArgs e)
        {
            Current.TempJednostkaID = Current.JednostkaID;
            Current.JednostkaID = ((Button)sender).CommandArgument.ToString();

            Current.Uprawnienia = Stale.uprJednostka;
            Current.TempUprawnienia = "";

            vKP_JednostkiFirmy item = Model.GetJednostkaFirma(int.Parse(KPPage.Current.JednostkaID));
            (this.Master as SiteMaster).UstawWitaj(item.JednostkaKod, item.JednostkaNazwa);
            Server.Transfer("~/Default.aspx");
        }
        protected void btnZapiszKontekstClick(object sender, EventArgs e)
        {
            if (dUprawnienia.SelectedValue == Stale.uprWyb)
            {
                komunikatError(-2);
                return;
            }
            Current.Uprawnienia = dUprawnienia.SelectedValue;
            Current.TempUprawnienia = "";

            Server.Transfer("~/Default.aspx");
        }
        //protected void btnZapiszGlClick(object sender, EventArgs e)
        //{

        //    int iTemp = Osoby.UpdateJednostkaGlowna(int.Parse(((Button)sender).CommandArgument.ToString()),
        //                  int.Parse(((TextBox)((Button)sender).Parent.FindControl("JednostkaGlownaID")).Text));
        //    if (iTemp < 0)
        //    {
        //        komunikatError(iTemp);
        //        return;
        //    }
        //}

        protected void sortujJClick(object sender, EventArgs e)
        {
            this.ObjectDataSource1.SelectMethod = "PobierzJednostkiNaListeSortujJ";
            ListView1.DataBind();
        }
        protected void sortujGClick(object sender, EventArgs e)
        {
            this.ObjectDataSource1.SelectMethod = "PobierzJednostkiNaListeSortujG";
            ListView1.DataBind();
        }

    }
}